Transparent Parallelization of Constraint Programs on Computer Clusters
نویسندگان
چکیده
The availability of multi-processor machines and computer clusters offer significant opportunities for constraint programming. They also present a fundamental challenge: how to exploit parallelism transparently to speed up constraint programs. Our recent research showed how to parallelize constraint programs transparently on parallel computers. This paper generalizes the approach for cluster of computers and provides preliminary experimental evidence of its benefits. Indeed, on some difficult job-shop scheduling problems, the transparent parallelization provides dramatic, superlinear speed-ups ranging from 61 to 42,090 on 16 processors for depth-first search and from 9 to 48 for limited discrepancy search.
منابع مشابه
Transparent Parallelization of Constraint Programming
The availability of commodity multi-core and multi-processor machines and the inherent parallelism in constraint programming search offer significant opportunities for constraint programming. They also present a fundamental challenge: how to exploit parallelism transparently to speed up constraint programs. This paper shows how to parallelize constraint programs transparently without changes to...
متن کاملAsap: Automatic Speculative Acyclic Parallelization for Clusters
While clusters of commodity servers and switches are the most popular form of large-scale parallel computers, many programs are not easily parallelized for clusters due to high internode communication cost and lack of globally shared memory. Speculative Decoupled Software Pipelining (Spec-DSWP) is a promising automatic parallelization technique for clusters that speculatively partitions a loop ...
متن کاملComparative Survey of Approaches to Automatic Parallelization
Automatic parallelization in a compiler is becoming more important as computer technologies expand to include more distributed computing. This paper focuses on a comparative study of past and present techniques for automatic parallelization. It includes techniques such as scalar analysis, array analysis, and commutativity analysis. The need for automatic parallelization in compilers is growing ...
متن کاملAuto-CFD: Efficiently Parallelizing CFD Applications on Clusters
Computational Fluid Dynamics (CFD) applications are highly demanding for parallel computing. Many such applications have been shifted from expensive MPP boxes to cost-effective clusters. Auto-CFD is a pre-compiler which transforms Fortran CFD sequential programs to efficient message-passing parallel programs running on clusters. Our work has the following three unique contributions. First, this...
متن کاملEfficient parallelization of the genetic algorithm solution of traveling salesman problem on multi-core and many-core systems
Efficient parallelization of genetic algorithms (GAs) on state-of-the-art multi-threading or many-threading platforms is a challenge due to the difficulty of schedulation of hardware resources regarding the concurrency of threads. In this paper, for resolving the problem, a novel method is proposed, which parallelizes the GA by designing three concurrent kernels, each of which running some depe...
متن کاملذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
عنوان ژورنال:
دوره شماره
صفحات -
تاریخ انتشار 2008